/*
 *  MutaSim - an artificial life simulator based on cellular automata.
 *  Copyright (C) 2009-2010 Alexei Tereschenko <aytereschenko@gmail.com>
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

package tilex.sim;


/**
 *         Класс, описывающий образец симулируемого организма.
 *         Этот образец используется для сохранения/загрузки описания организма и для редактирования его через
 *         диалоговое окно настройки.
 */
public class CreatureSample {

	/**
	 * Цвет организма, используемый для отображения клетки на поле.
	 */
	protected int	color;

	/**
	 * Дополнительный цвет, используемый для пометки мутантов.
	 */
	protected int	mutantColor;

	/**
	 * Начальная масса, с которой рождается новый организм.
	 */
	protected int	startMass;

	/**
	 * Кол-во ресурсов, съедаемых организмом за 1 шаг симуляции.
	 */
	protected int	resourceEat;

	/**
	 * Тип потребляемых ресурсов.
	 */
	protected int	resourceIn;

	/**
	 * Тип производимых ресурсов.
	 */
	protected int	resourceOut;

	/**
	 * Половозрелый возраст.
	 */
	protected int	reproductAge;

	/**
	 * Максимальный возраст.
	 */
	protected int	maxAge;

	/**
	 * Кол-во детей, которое может родить организм за 1 шаг симуляции.
	 */
	protected int	childrenCount;

	/**
	 * Вероятность мутации, 0..100.
	 */
	protected int	mutation;

	public void setColor(int color) {
		this.color = color;
	}

	public int getColor() {
		return color;
	}

	public void setMutantColor(int mutantColor) {
		this.mutantColor = mutantColor;
	}

	public int getMutantColor() {
		return mutantColor;
	}

	public void setStartMass(int startMass) {
		this.startMass = startMass;
	}

	public int getStartMass() {
		return startMass;
	}

	public void setResourceEat(int resourceEat) {
		this.resourceEat = resourceEat;
	}

	public int getResourceEat() {
		return resourceEat;
	}

	public void setResourceIn(int resourceIn) {
		this.resourceIn = resourceIn;
	}

	public int getResourceIn() {
		return resourceIn;
	}

	public void setResourceOut(int resourceOut) {
		this.resourceOut = resourceOut;
	}

	public int getResourceOut() {
		return resourceOut;
	}

	public void setReproductAge(int reproductAge) {
		this.reproductAge = reproductAge;
	}

	public int getReproductAge() {
		return reproductAge;
	}

	public void setMaxAge(int maxAge) {
		this.maxAge = maxAge;
	}

	public int getMaxAge() {
		return maxAge;
	}

	public void setChildrenCount(int childrenCount) {
		this.childrenCount = childrenCount;
	}

	public int getChildrenCount() {
		return childrenCount;
	}

	public void setMutation(int mutation) {
		this.mutation = mutation;
	}

	public int getMutation() {
		return mutation;
	}
}
